Technologies for time-delayed augmented reality presentations

ABSTRACT

Technologies for time-delayed augmented reality (AR) presentations includes determining a location of a plurality of user AR systems located within the presentation site and determining a time delay of an AR sensory stimulus event of an AR presentation to be presented in the presentation site for each user AR system based on the location of the corresponding user AR system within the presentation site. The AR sensory stimulus event is presented to each user AR system based on the determined time delay associated with the corresponding user AR system. Each user AR system generates the AR sensory stimulus event based on a timing parameter that defines the time delay for the corresponding user AR system such that the generation of the AR sensory stimulus event is time-delayed based on the location of the user AR system within the presentation site.

BACKGROUND

Augmented reality systems project virtual characters and objects ontophysical locations, allowing for immersive experiences and novelinteraction models. In some augmented reality systems, virtualcharacters or objects may be inserted into real-world images, forexample by overlaying a captured image or video stream with a two- orthree-dimensional animated rendering of the virtual character. In someimplementations, a physical object recognized in the captured image maybe replaced by a virtual object associated with that physical object.For example, recognized vehicles in the captured image may be recognizedand replaced with animated vehicles (e.g., military vehicles, cartoonvehicles, etc.). Additionally, a user of the augmented reality systemmay be able to interact with the various virtual characters and/orobjects.

Augmented reality experiences may be presented to multiple users in somecases. In such situations, each user is able to experience the sameaugmented reality. For example, a particular augmented realitypresentation may include an augmented reality sensor stimulus event,such as a sound or tactile vibration, which is experienced by each ofthe augmented reality participants. In typical augmented realitysystems, however, each participant experiences the augmented realitypresentation and stimuli in the same time frame, which can lower theeffect of immersion felt by the participants as a group.

BRIEF DESCRIPTION OF THE DRAWINGS

The concepts described herein are illustrated by way of example and notby way of limitation in the accompanying figures. For simplicity andclarity of illustration, elements illustrated in the figures are notnecessarily drawn to scale. Where considered appropriate, referencelabels have been repeated among the figures to indicate corresponding oranalogous elements.

FIG. 1 is a simplified diagram illustrating a time-delayed augmentedreality stimulus event presented by an augmented reality server andexperienced by multiple users of user augmented reality systems within apresentation site;

FIG. 2 is simplified diagram illustrating another embodiment of atime-delayed augmented reality stimulus event experienced by multipleusers of user augmented reality systems;

FIG. 3 is a simplified block diagram of at least one embodiment of anaugmented reality system for presenting time-delayed augmented realitystimulus events;

FIG. 4 is a simplified block diagram of at least one embodiment of anaugmented reality server of the augmented reality system of FIG. 3;

FIG. 5 is a simplified block diagram of at least one embodiment of auser augmented reality system of the augmented reality system of FIG. 3;

FIG. 6 is a simplified block diagram of at least one embodiment of anenvironment of the augmented reality server of FIG. 4;

FIG. 7 is a simplified block diagram of at least one embodiment of anenvironment of the user augmented reality system of FIG. 4;

FIGS. 8 and 9 are a simplified flow diagram of at least one embodimentof a method for presenting a time-delayed augmented reality presentationthat may be executed by the augmented reality server of FIGS. 4 and 6;

FIGS. 10 and 11 are a simplified flow diagram of at least one embodimentof a method for presenting a time-delayed augmented reality presentationthat may be executed by the user augmented reality system of FIGS. 5 and7.

DETAILED DESCRIPTION OF THE DRAWINGS

While the concepts of the present disclosure are susceptible to variousmodifications and alternative forms, specific embodiments thereof havebeen shown by way of example in the drawings and will be describedherein in detail. It should be understood, however, that there is nointent to limit the concepts of the present disclosure to the particularforms disclosed, but on the contrary, the intention is to cover allmodifications, equivalents, and alternatives consistent with the presentdisclosure and the appended claims.

References in the specification to “one embodiment,” “an embodiment,”“an illustrative embodiment,” etc., indicate that the embodimentdescribed may include a particular feature, structure, orcharacteristic, but every embodiment may or may not necessarily includethat particular feature, structure, or characteristic. Moreover, suchphrases are not necessarily referring to the same embodiment. Further,when a particular feature, structure, or characteristic is described inconnection with an embodiment, it is submitted that it is within theknowledge of one skilled in the art to effect such feature, structure,or characteristic in connection with other embodiments whether or notexplicitly described. Additionally, it should be appreciated that itemsincluded in a list in the form of “at least one A, B, and C” can mean(A); (B); (C); (A and B); (A and C); (B and C); or (A, B, and C).Similarly, items listed in the form of “at least one of A, B, or C” canmean (A); (B); (C); (A and B); (A and C); (B and C); or (A, B, and C).

The disclosed embodiments may be implemented, in some cases, inhardware, firmware, software, or any combination thereof. The disclosedembodiments may also be implemented as instructions carried by or storedon a transitory or non-transitory machine-readable (e.g.,computer-readable) storage medium, which may be read and executed by oneor more processors. A machine-readable storage medium may be embodied asany storage device, mechanism, or other physical structure for storingor transmitting information in a form readable by a machine (e.g., avolatile or non-volatile memory, a media disc, or other media device).

In the drawings, some structural or method features may be shown inspecific arrangements and/or orderings. However, it should beappreciated that such specific arrangements and/or orderings may not berequired. Rather, in some embodiments, such features may be arranged ina different manner and/or order than shown in the illustrative figures.Additionally, the inclusion of a structural or method feature in aparticular figure is not meant to imply that such feature is required inall embodiments and, in some embodiments, may not be included or may becombined with other features.

Referring now to FIG. 1, in an illustrative embodiment, a system 100 forpresenting a time-delayed augmented reality (AR) presentation includesan AR server 102 and multiple user AR systems 104, which are used, worn,or otherwise operated by users 106 within a presentation site 108 atwhich the time-delayed AR presentation is to be presented. In use, asdiscussed in more detail below, the AR server 102 is configured toidentify AR sensory stimulus events of the AR presentation, such asaudible, visual, or tactile AR stimulus events (or a combinationthereof), and delay the generation of those AR sensory stimulus eventson the individual user AR systems 104 based on the location of each userAR system 104. In the example shown in FIG. 1, for example, theaugmented reality server 102 is presenting an AR presentation 110 thatincludes a visual AR stimulus event 112 embodied as an AR earthquakecrack appearing on the ground of the presentation site 108. As such,each user 106 is able to see the visual AR stimulus event 112 via theiruser AR system 104. In addition to the visual AR stimulus event 112, thepresentation includes an audible AR stimulus event 114, such as a loudcracking sound. However, the audible AR stimulus event 114 is delayedfor each user 106 based on the distance of that particular user 106 fromthe visual AR stimulus event 112. That is, the user AR system 104 ofeach user 106 generates the audible AR stimulus event 114 in atime-delayed manner. As such, the users 106A and 106B experience theaudible AR stimulus event 114 before the user 106C, who experiences theaudible AR stimulus event 114 before users 106D and 106E. By timedelaying the AR sensory stimulus events, the system 100 allows for newAR experience modalities. For example, because users 106A and 106Bexperience the audible AR stimulus event 114 (e.g., a loud crackingsound) before users 106D and 106E, users 106A and 106B may react to theAR presentation 110 before users 106D and 106E, who are not in aposition to see the visual AR stimulus event 112. The users 106D and106E may become aware of the visual AR stimulus event 112 in response tothe reactions of users 106A and 106B. In some embodiments, the timedelay of between the visual AR stimulus event 112 and the audible ARstimulus event 114 may be based on the physical distance from the visualAR stimulus event 112 of the particular user, along with the applicablelaws of physics. For example, in some embodiments, the audible ARstimulus event 114 may be experienced (i.e., hears) later by aparticular user than that particular user experiences (e.g., sees) thevisual AR stimulus event 112 due to the difference in speeds of soundand light.

Additionally, it should be appreciated that the impact of distancewithin a particular AR presentation may be increased by artificiallyincreasing the time-delay of associated AR sensory stimulus events. Forexample, the audible AR stimulus event 114 experienced by the users 106Dand 106E of FIG. 1 may be time-delayed for an amount that is greaterthat the audible delay that the distance between the users 106D and 106Eand the visual AR stimulus event 112 would cause in the real world. Inthis way, the sense and/or impact of distance in AR presentations may beincreased because, for example, the user 106E may be able to see thereaction of the user 106D before seeing the visual AR stimulus event 112and, therefore, react to both the AR presentation and the reactions ofthe user 106D.

By delaying the generation of AR sensory stimulus events across multipleuser AR systems 104, the AR server 102 may also create a sense ofdirection in groups of users 106 of the user AR systems 104. Forexample, in some embodiments as shown in FIG. 2, each user AR system 104may include a pair of AR goggles 200 and a pair of AR wrist bands 202,which may provide a tactile feedback to the user. In such embodiments,the AR server 102 may cause an AR sensory stimulus event 210, such as anAR tactile stimulus event, to be generated by the user AR systems 104 ina time-delayed manner such that the AR sensory stimulus event 210propagates down the line of users. Each user experiences the AR sensorystimulus event 210 on AR wrist band 202 of their right arm first,followed by the AR wrist band 202 on their left arm. In this way, theusers 106 experience the AR tactile stimulus event as originating fromthe right of them and propagating toward the left of them. Suchtime-delayed experiences may be used to create an AR wave of experiencesin large groups, such as stadium crowds.

Referring now to FIG. 3, the illustrative system 100 includes the ARserver 102 and multiple user AR systems 104, which are worn by users 106within the presentation site 108 wherein an AR presentation is to bepresented by the AR server 102. The AR server 102 and each of the userAR systems 104 are communicatively coupled via a network 300. In use, asdiscussed in more detail below, the AR server 102 may transmit ARpresentations and/or AR sensory stimulus events to the user AR systems104 via the network 300. Similarly, each user AR system 104 may transmitreaction data to the AR server 102 indicative of a user's reaction to ARsensory stimulus events.

The network 300 may be embodied as any type of network capable offacilitating communications between the AR server 102 and the user ARsystems 104. For example, the network 300 may be embodied as, orotherwise include, a wired or wireless local area network (LAN), a wiredor wireless wide area network (WAN), a cellular network, and/or apublicly-accessible, global network such as the Internet. As such, insome embodiments, the network 300 may include additional devices, suchas additional computers, routers, and switches, to facilitatecommunications thereacross.

In some embodiments, the AR server 102 may be located within thepresentation site 108. However, in other embodiments, the AR server 102may be located remotely from the presentation site 108. The system 100may also include one or more local sensors 302 located within thepresentation site to monitor the users of the user AR systems 104. Forexample, the local sensors 302 may produce sensor data indicative of thelocation of the users within the presentation site and/or of reactionsof the users to the AR sensory stimulus events. As such, the localsensors 302 may be embodied as any type of sensor capable of producingsensor data indicative of a characteristic or action of the usersincluding, but not limited to, cameras, microphones, temperaturesensors, motion sensors, proximity sensors, and/or other types ofsensors.

Referring now to FIG. 4, the AR server 102 may be embodied as any typeof server or other compute device capable of presenting AR presentationsto the user AR systems 104 and performing the functions describedherein. For example the AR server 102 may be embodied as, withoutlimitation, one or more server computers, distributed computing systems,workstations, computers, desktop computers, laptop computers, notebookcomputers, tablet computers, mobile computing devices, networkappliances, web appliances, processor-based systems, consumer electronicdevices, and/or other compute devices. As such, it should be appreciatedthat although shown in FIGS. 1, 3, and 4 as a single compute device, theAR server 102 may be embodied as multiple compute devices (e.g.,distributed compute devices) in other embodiments.

As shown in FIG. 4, the illustrative AR server 102 includes a computeengine 400, an input/output (“I/O”) subsystem 406, a data storage 410, acommunication subsystem 420, and a master network clock 450. Of course,it should be appreciated that the AR server 102 may include other oradditional components, such as those commonly found in a typical computedevice (e.g., various input/output devices and/or other components), inother embodiments. Additionally, in some embodiments, one or more of theillustrative components may be incorporated in, or otherwise form aportion of, another component.

The compute engine 400 may be embodied as any type of device orcollection of devices capable of performing various compute functions asdescribed below. In some embodiments, the compute engine 400 may beembodied as a single device such as an integrated circuit, an embeddedsystem, a field-programmable-array (FPGA, a system-on-a-chip (SOC), orother integrated system or device. Additionally, in some embodiments,the compute engine 400 includes or is embodied as a processor 402 andmemory 404. The processor 402 may be embodied as any type of processorcapable of performing the functions described herein. For example, theprocessor 402 may be embodied as a single or multi-core processor(s),digital signal processor, microcontroller, or other processor orprocessing/controlling circuit. Similarly, the memory 404 may beembodied as any type of volatile or non-volatile memory or data storagecapable of performing the functions described herein. In operation, thememory 404 may store various data and software used during operation ofthe AR server 102 such as operating systems, applications, programs,libraries, and drivers.

The compute engine 400 is communicatively coupled to other components ofthe AR server 102 via the I/O subsystem 406, which may be embodied ascircuitry and/or components to facilitate input/output operations withcompute engine 400 (e.g., with the processor 402 and/or memory 404) andother components of the AR server 102. For example, the I/O subsystem406 may be embodied as, or otherwise include, memory controller hubs,input/output control hubs, firmware devices, communication links (i.e.,point-to-point links, bus links, wires, cables, light guides, printedcircuit board traces, etc.) and/or other components and subsystems tofacilitate the input/output operations. In some embodiments, the I/Osubsystem 406 may be incorporated, along with the processor 402, the404, and other components of the AR server 102, into the compute engine400.

The data storage 410 may be embodied as any type of device or devicesconfigured for short-term or long-term storage of data such as, forexample, memory devices and circuits, memory cards, hard disk drives,solid-state drives, or other data storage devices. As discussed indetail below, the AR server 102 may store AR presentations, which mayinclude time-delayed AR sensory stimulus event for presentation to theuser AR systems 104 of users in the presentation site 108, along withother data.

The communication subsystem 420 may be embodied as any type ofcommunication circuit, device, or collection thereof, capable ofenabling communications between the AR server 102 and user AR systems104 via the network 300. To do so, the communication subsystem 420 maybe configured to use any one or more communication technologies (e.g.,wireless or wired communications) and associated protocols (e.g.,Ethernet, Bluetooth®, Wi-Fi®, WiMAX, LTE, 5G, etc.) to effect suchcommunication.

The master network clock 450 may be embodied as any type of device,circuit, and/or collection of devices or circuits capable of generatinga clock signal usable by other components of the AR server 102. Forexample, the master network clock 450 may be embodied as, or otherwiseinclude, a crystal oscillator-based circuit and may generate a clocksignal of any suitable type such as square wave or a sine wave. Asdiscussed in more detail below, the master network clock 450 is used tosynchronize local clocks of the user AR systems 104 so that thetime-delayed AR sensory stimulus events can be generated at theappropriate time across the various users.

In some embodiments, the AR server 102 may also include one or moreperipheral devices 460. The peripheral devices 460 may include anynumber of additional peripheral or interface devices, such as otherinput/output devices, storage devices, and so forth. The particulardevices included in the peripheral devices 460 may depend on, forexample, the type and/or configuration of the AR server 102.

Referring now to FIG. 5, each user AR system 104 may be embodied as anytype of augmented reality device or collection of devices. In someembodiments, the user AR system 104 may be embodied as a single deviceor interconnected devices that form an AR system. However, in otherembodiments, the user AR system 104 may be embodied as individual ARdevices that may have little or no communication between each other butare configured to receive AR presentations, including AR sensorystimulus events, from the AR server 102. In some embodiments, the userAR system 104 may be embodied as an AR wearable system designed to beworn by the user such as, for example, an AR eyewear, an AR earpiece,and AR vest, an AR bracelet, AR-enable accessories, AR-enabled clothing,and/or other AR wearable devices or systems. In other embodiments, theuser AR system 104 may embodied as an AR device usable by the user toexperience an AR sensory stimulus event such as, for example, asmartphone, tablet compute device, laptop compute device, or othernon-wearable AR device or collection of devices capable of generating ARsensory stimulus events.

The illustrative user AR system of FIG. 5 includes a compute engine 500,an input/output (“I/O”) subsystem 506, one or more input sensors 510,one or more location determination sensors 530, one or more outputdevices 540, a local network clock 550, a communication subsystem 560,and a data storage 570. Of course, it should be appreciated that theuser AR system 104 may include other or additional components, such asthose commonly found in an AR device (e.g., various input/output devicesand/or other components), in other embodiments. Additionally, in someembodiments, one or more of the illustrative components may beincorporated in, or otherwise form a portion of, another component.

The compute engine 500 may be embodied as any type of device orcollection of devices capable of performing various compute functions asdescribed below. In some embodiments, the compute engine 500 may beembodied as a single device such as an integrated circuit, an embeddedsystem, a field-programmable-array (FPGA, a system-on-a-chip (SOC), orother integrated system or device. Additionally, in some embodiments,the compute engine 500 includes, or is embodied as, a processor 502 andmemory 504. The processor 502 may be embodied as any type of processorcapable of performing the functions described herein. For example,similar to processor 402, the processor 502 may be embodied as a singleor multi-core processor(s), digital signal processor, microcontroller,or other processor or processing/controlling circuit. Similarly, thememory 504 may be embodied as any type of volatile or non-volatilememory or data storage capable of performing the functions describedherein. In operation, the memory 504 may store various data and softwareused during operation of the user AR system 104 such as operatingsystems, applications, programs, libraries, and drivers.

The compute engine 400 is communicatively coupled to other components ofthe user AR system 104 via the I/O subsystem 506, which may be embodiedas circuitry and/or components to facilitate input/output operationswith compute engine 500 (e.g., with the processor 502 and/or memory 504)and other components of the user AR system 104. For example, the I/Osubsystem 506 may be embodied as, or otherwise include, memorycontroller hubs, input/output control hubs, firmware devices,communication links (i.e., point-to-point links, bus links, wires,cables, light guides, printed circuit board traces, etc.) and/or othercomponents and subsystems to facilitate the input/output operations. Insome embodiments, the I/O subsystem 506 may be incorporated, along withthe processor 502, the 504, and other components of the user AR system104, into the compute engine 500.

The input sensors 510 may be embodied as any number of any type ofsensors capable of producing data indicative of a reaction of a user ofthe user AR system 104 to one or more AR sensory stimulus events (e.g.,an audible, visual, tactile, heat, or olfactory stimulus event). Forexample, in some embodiments, the input sensors 510 may include one ormore visual input sensors 512. Each visual input sensor 512 may beembodied as any type of sensor capable capturing images of the userand/or the user's surroundings, such as a camera, image sensor, and/orthe like. Additionally, in some embodiments, the input sensors 510 mayinclude one or more audible input sensors 514. Each audible input sensor514 may be embodied as any type of sensor capable capturing audio orsounds of the user and/or the user's surrounding, such as a microphone,ear microphone, and/or the like. In some embodiments, the input sensors510 may also include one or more tactile input sensors 516. Each tactileinput sensor 516 may be embodied as any type of sensor capable capturinguser tactile interaction, such as a touch sensor or the like. The inputsensors 510 may also include one or more proximity input sensors 518.Each proximity input sensor 518 may be embodied as any type of sensorcapable capturing sensor data indicative of the proximity of the user toother users and/or structures, such as an electromagnetic sensor,photoelectric sensor, and/or the like. Additionally, in someembodiments, the input sensors 510 may include one or more conductanceinput sensors 520. Each conductance input sensor 520 may be embodied asany type of sensor capable capturing a skin response or the like of theuser, such as a galvanic skin response (GSR) sensor, an electrodemeralresponse (EDR), a skin conductance response (SCR) sensor, and/or thelike. In some embodiments, the input sensors 510 may also include one ormore force input sensors 522. Each force input sensor 522 may beembodied as any type of sensor capable measuring an amount of forceapplied by the user such as a strain gauge, load cell, and/or the like.

The location determination sensors 530 may be embodied as any type ofsensor or collection of sensor capable of producing sensor dataindicative of the location of the user AR system 104 within thepresentation site 108. To do so, the location determination sensors 530may utilize any suitable technology to determine the location of theuser AR system 104. For example, the location determination sensors 530may include a WiFi or Bluetooth sensor to facilitate the triangulationor trilateration of the location of the user AR system 104 within thepresentation site. Additionally or alternatively, in some embodiments,the location determination sensors 530 may include a global positioningsystem (GPS) circuit 532 configured to determine the location of theuser AR system 104 based on received GPS signals.

The output devices 540 may be embodied as any number of any type ofdevices or circuits capable of producing a sensory stimulus (e.g., e.g.,an audible, visual, tactile, heat, or olfactory output) to the user ofthe user AR system 104. For example, in some embodiments, the outputdevices 540 include one or more visual output devices 542 to display avisual stimulus, such as a display, projector, and/or the like.Additionally, the output devices 540 may include one or more audibleoutput devices 544 to generate an audible stimulus, such as a speaker,an ear transducer, and/or the like. The output devices 540 may alsoinclude one or more tactile output devices 546 to generate a tactile orhaptic stimulus, such as a vibrator, motor, and/or the like 540.Additionally, the output devices 540 may include one or more olfactoryoutput devices 548 to generate an olfactory stimulus, such as an odorproducing device or system.

The network clock 550 may be similar to the master network clock 450 andmay be embodied as any type of device, circuit, and/or collection ofdevices or circuits capable of generating a clock signal usable by othercomponents of the user AR system 104. For example, the network clock 550may be embodied as, or otherwise include, a crystal oscillator-basedcircuit and may generate a clock signal of any suitable type such assquare wave or a sine wave. As discussed in more detail below, thenetwork clock 550 is synchronized with the master network clock 450 ofthe AR server 102 so that the user AR system 104 may generate thetime-delayed AR sensory stimulus events at a time designated by the ARserver 102.

The communication subsystem 560 may be embodied as any type ofcommunication circuit, device, or collection thereof, capable ofenabling communications between the user AR systems 104 and the ARserver 102 and/or other user AR systems 104 via the network 300. To doso, the communication subsystem 560 may be configured to use any one ormore communication technologies (e.g., wireless or wired communications)and associated protocols (e.g., Ethernet, Bluetooth®, Wi-Fi®, WiMAX,LTE, 5G, etc.) to effect such communication.

The data storage 570 may be embodied as any type of device or devicesconfigured for short-term or long-term storage of data such as, forexample, memory devices and circuits, memory cards, hard disk drives,solid-state drives, or other data storage devices. As discussed indetail below, the user AR system 104 may store AR presentations, whichmay include time-delayed AR sensory stimulus events, received from theAR server 102.

In some embodiments, the user AR system 104 may also include one or moreperipheral devices 580. The peripheral devices 580 may include anynumber of additional peripheral or interface devices, such as otherinput/output devices, storage devices, and so forth. The particulardevices included in the peripheral devices 580 may depend on, forexample, the type and/or configuration of the user AR system 104.

Referring now to FIG. 6, in illustrative embodiment, the AR server 102may establish an environment 600 during operation. The illustrativeenvironment 600 includes a communicator 602, a user location mapper 604,a network clock synchronizer 606, an AR presentation manager 608, and auser reaction manger 610. Each of the components of the environment 600may be embodied as hardware, firmware, software, or a combinationthereof. As such, in some embodiments, one or more of the components ofthe environment 600 may be embodied as circuitry or a collection ofelectrical devices (e.g., communication circuitry 602, a user locationmapper circuit 604, a network clock synchronizer circuit 606, an ARpresentation manner 608, and a user reaction manger 610). It should beappreciated that, in such embodiments, one or more of the communicationcircuitry 602, the user location mapper circuit 604, the network clocksynchronizer 606, the AR presentation manner 608, and the user reactionmanger 610 may form a portion of one or more of the compute engine 400,the I/O subsystem 406, and/or other components of the AR server 102.

The communicator 602 is configured to manage communications between theAR server 102 and the various user AR systems 104 located within thepresentation site 108. For example, as discussed in more detail below,the communicator 602 may control the communication subsystem 420 totransmit AR presentations including time-delayed AR sensory stimulusevents to the user AR systems 104 and receive user reaction data fromthe user AR systems 104 over the network 300. To do so, the communicator602 utilize any one or more communication technologies (e.g., wirelessor wired communications) and associated protocols (e.g., Ethernet,Bluetooth®, Wi-Fi®, WiMAX, LTE, 5G, etc.) to effect such communication.

The user location mapper 604 is configured to determine the location ofeach participating user AR system 104 (e.g., the location of each user106) within the presentation site 108. To do so, in some embodiments,the user location mapper 604 may query the user AR systems 104 forlocation data indicative of their present location within thepresentation site 108. Such location data may be an absolute locationvalue, such as a GPS location, or a relative location value such aslocation data indicative of the location of the user relative to a knownposition or device within the presentation site (e.g., relative to acommunication node or WiFi hotspot). Additionally or alternatively, insome embodiments, the user location mapper 604 may be configured toutilize sensor data received from one or more local sensors 302 locatedwithin the presentation site 108 to infer or otherwise determine thelocation of each user AR system 104. For example, the user locationmapper 604 may analyze images received from one or more local camerasensors 302 to determine the relative location of the users 106 withinthe presentation site. Further, in some embodiments, the user locationmapper 604 may also query each identified user AR system 104 todetermine whether the user 106 desires to participate in the ARpresentation at that particular presentation site 108.

The network clock synchronizer 606 is configured to synchronize thenetwork clocks 550 of each user AR system 104 with the master networkclock 450 of the AR server 102. To do so, in some embodiments, the ARserver 102 may transmit clock information to each user AR system 104.Such clock information may be indicative of the timing of the masternetwork clock 450 or otherwise usable by the user AR system 104 tosynchronize its network clock 550 with the master network clock 450. Inother embodiments, each user AR system 104 may initially send clockinformation indicative of the timing of its network clock 550 to the ARserver 102, and the AR server 102 may utilize the clock information foreach user AR system 104 to determine a timing offset to apply to eachparticular user AR system 104 so as to synchronize the timing betweenthe master network clock 450 and the network clocks 550 of the user ARsystems 104.

The AR presentation manager 608 is configured to manage and present thetime-delayed AR presentations to the user AR systems 104 located withinthe presentation site 108. To do so, the AR presentation manager 608includes an AR sensory stimulus event determiner 620 configured toidentify AR sensory stimulus events of an AR presentation to bepresented at the presentation site 108. For example, in someembodiments, AR presentation may include data tags or identifiers thatidentify AR sensory stimulus events of the AR presentation that can betime-delayed. In such embodiments, the AR sensory stimulus eventdeterminer 620 may analyze the AR presentation to identify each of thedata tags and associated AR sensory stimulus events. In otherembodiments in which the AR presentation does not include such data tagsor identifiers, the AR sensory stimulus event determiner 620 may analyzethe AR presentation itself and infer or otherwise identify one or moreAR sensory stimulus events based on such analysis. To do so, the ARsensory stimulus event determiner 620 may utilize any suitable algorithmor analysis to identify the AR sensory stimulus events that can betime-delayed. For example, the AR sensory stimulus event determiner 620may identify abrupt changes of sensory stimulus present in the ARpresentation such as, for example, an abrupt change in volume (which maybe indicative of an explosion or the like), an abrupt scene change(which may be indicative of an important event), and/or the like.Furthermore, in those AR presentations including visual data, the ARsensory stimulus event determiner 620 may utilize various imagerecognition algorithms to identify known visual stimulus that can betime delayed included in the AR presentation.

After the AR sensory stimulus event determiner 620 has identified the ARsensory stimulus events of the AR presentation that can be time-delayed,the AR sensory stimulus event time delay determiner 622 determines anassociated time delay for each identified time-delayed AR sensorystimulus event. To do so, in some embodiments, the AR sensory stimulusevent time delay determiner 622 may determine a value of a time delaybased on the location of each user AR system 104 (i.e., the location ofeach user 106) within the presentation site 108 as determined by theuser location mapper 604. As discussed above, the location of each userAR system 104 may be an absolute position (e.g., GPS coordinates) orrelative to each other or another fixed location (e.g., relative to alocation at which an AR sensory stimulus event is to occur). Forexample, in some embodiments, the AR sensory stimulus event time delaydeterminer 622 may apply a time delay that is increased based on thedistance of the respective user AR system 104 to a reference locationwithin the presentation site 108. In other embodiments, the AR sensorystimulus event time delay determiner 622 may logically divide thepresentation site 108 into various zones (e.g., relative to a referencelocation) and apply time delays on a zone-by-zone basis (i.e., all userAR systems 104 within the same zone are assigned the same time delay),rather than on a per-user AR system 104 basis (i.e., based only on thelocation of each user AR system 104).

The particular values of the time delay may depend on various factorssuch as, for example, the type of AR sensory stimulus event to be timedelayed, the size of the presentation site 108, the number ofparticipating user AR systems 104, laws of physics for a particular ARsensory stimulus, and/or other criteria. Additionally, the particulartime delay value may be determined relative to the synchronized masternetwork clock 450 or may be determined relative to the network clock 550of the corresponding user AR system 104 as discussed in more detailbelow.

After the AR sensory stimulus event time delay determiner 622 hasdetermined the time delays for each identified AR sensory stimulus eventand each user AR system 104, the AR presentation manager 608 isconfigured to present the time-delayed AR presentation to theparticipating users located within the presentation site 108. That is,the AR presentation manager 608 presents the identified sensory stimulusevents of the time-delayed AR presentation to the users of the user ARsystems 104 in a time-delayed manner. To do so, in the illustrativeembodiment, the AR presentation manager 608 appends, incorporates, orotherwise associates a timing parameter with each AR sensory stimulusevent to be time delayed. The timing parameter is indicative of thecorresponding timing delay determined for the particular time-delayed ARsensory stimulus event and for the particular user AR system 104, and isusable by the corresponding user AR system 104 to determine when (i.e.,at what time) to present the time-delayed AR sensory stimulus event tothe user. As discussed above, the timing parameter may be relative tothe master network clock 450 or the network clock 550 of thecorresponding user AR system 104. The AR presentation manager 608 maysubsequently transmit the time-delayed AR sensory stimulus event withthe associated timing parameter to the corresponding user AR system 104.Because the time-delayed AR sensory stimulus event includes the timingparameter, the AR presentation manager 608 may transmit the time delayedAR sensory stimulus event prior to its presentation by each user ARsystem (e.g., during a presentation initialization period). For example,in some embodiments, the AR presentation manager 608 transmits thetime-delayed AR sensory stimulus events, with the timing parameters, aspart of the overall AR presentation sent to each user AR system 104.

In other embodiments, the AR presentation manager 608 may transmit thetime-delayed AR sensory stimulus event in real time. In suchembodiments, a timing parameter is not associated with each time-delayedAR sensory stimulus event. Rather, the AR presentation manager 608transmits the AR sensory stimulus event at a transmission time that isbased on the delay time determined for that particular AR sensorystimulus event and the particular user AR system 104 receiving thetime-delayed AR sensory stimulus event. In such embodiments, the user ARsystem 104 may immediately or responsively present the corresponding ARsensory stimulus event to produce a relative time-delayed AR sensorystimulus event (i.e., relative to other user AR systems 104).

The user reaction manager 610 is configured to obtain reaction dataindicative of a reaction of the users to one or more time-delayedstimulus events and update the AR presentation (e.g., a time-delayedstimulus event) based on such reaction data. To do so, the user reactionmanager 610 includes a user reaction aggregator 630 and an ARpresentation updater 632. The user reaction aggregator 630 is configuredto obtain user reaction data indicative of a reaction of each user of anuser AR system 104 to a time-delayed AR sensory stimulus event. To doso, in some embodiments, the user reaction aggregator 630 may receivethe user reaction data from each participating user AR system 104. Forexample, each user AR system 104 may be configured to transmit userreaction data in response to the presentation of a time-delayed sensorystimulus event on the corresponding user AR system 104. In otherembodiments, the AR server 102 may transmit a query to each user ARsystem 104 requesting the user reaction data. Additionally, inembodiments in which the system 100 includes the local sensor 302 in thepresentation site 108, the user reaction aggregator 630 may receive userreaction data from the local sensors 302. As discussed above, the userreaction data may be embodied as any type of data indicative of a user'sreaction to the time-delayed AR sensory stimulus event such as, forexample, visual reaction data, audible reaction data, tactile reactiondata, conductance reaction data, force reaction data, movement reactiondata, and/or other types of reaction data.

In some embodiments, the user reaction aggregator 630 is configured toaggregate the various user reaction data received from the user ARsystems 104 and/or the local sensors 302. For example, the user reactionaggregator 630 may analyze the aggregate user reaction data to infer orotherwise determine a reaction of each user (e.g., was the particularuser surprised, upset, scared, etc.). To do so, the user reactionaggregator 630 may utilize any suitable analysis algorithm ormethodology depending on, for example, the type of reaction data (e.g.,an image analysis algorithm may be used to interpret visual reactiondata).

The AR presentation updater 632 is configured to update the ARpresentation based on the aggregated user reaction data. To do so, inthe illustrative embodiment, the AR presentation updater 632 may adjustor update the time delay associated with the particular AR sensorystimulus event. For example, the AR presentation updater 632 mayincrease or decrease the timing delay for the AR sensory stimulus eventassociated with a particular user AR system 104.

The AR server 102 may also maintain an AR content database 650, whichmay be embodied as any type of database, storage location, or othercollection of AR presentations. The AR content database 650 may store ARpresentations that have yet to be analyzed for AR sensory stimulusevents that can be delayed, as well as AR presentations that have beensuccessfully analyzed and updated. For example, after the ARpresentation manager 608 identifies one or more AR sensory stimulusevents of an AR presentation and associates a timing delay (e.g., atiming parameter) with each AR sensory stimulus event, the time-delayedAR presentation may be subsequently stored in the AR content database650. Additionally or alternatively, in some embodiments, individualtime-delayed AR sensory stimulus events may be stored in the AR contentdatabase with or without an associated AR presentation.

Referring now to FIG. 7, in illustrative embodiment, each user AR system104 may establish an environment 700 during operation. The illustrativeenvironment 700 includes a communicator 702, a network clock manager704, a user location reporter 706, an AR presentation presenter 708 anda user reaction monitor 710. Each of the components of the environment700 may be embodied as hardware, firmware, software, or a combinationthereof. As such, in some embodiments, one or more of the components ofthe environment 700 may be embodied as circuitry or a collection ofelectrical devices (e.g., communication circuitry 702, a network clockmanager circuit 704, a user location reporter circuit 706, an ARpresentation presenter circuit 708, and a user reaction monitor circuit710). It should be appreciated that, in such embodiments, one or more ofthe communication circuitry 702, the network clock manager circuit 704,the user location reporter circuit 706, the AR presentation presentercircuit 708, and the user reaction monitor 710 may form a portion of oneor more of the compute engine 500, the I/O subsystem 506, and/or othercomponents of the user AR system 104.

The communicator 702 is configured to manage communications between theuser AR system 104 and the AR server 102. For example, as discussedbelow, the communicator 702 may control the communication subsystem 560to receive AR presentations including time-delayed AR sensory stimulusevents from the AR server 102 and transmit user reaction data to the ARserver 102 over the network 300. To do so, the communicator 702 mayutilize any one or more communication technologies (e.g., wireless orwired communications) and associated protocols (e.g., Ethernet,Bluetooth®, Wi-Fi®, WiMAX, LTE, 5G, etc.) to effect such communication.

The network clock manager 704 is configured to synchronize the localnetwork clock 550 with the master network clock 450 of the AR server. Todo so, as discussed above, the user AR system 104 may receive clockinformation from the AR server 102 that is indicative of a timing of themaster network clock 450 or is otherwise usable by the network clockmanager 704 to synchronize the local network clock 550 with the masternetwork clock 450. Alternatively, in other embodiments, the networkclock manager 704 may initially transmit clock information indicative ofthe timing of the local network clock 550 of the AR server 102, whichmay be used by the AR server 102 to determine a timing offset for theparticular user AR system 104 when generating timing delay information.

The user location reporter 706 is configured to respond to locationqueries received from the AR server 102. In response, the user locationreporter 706 is configured to transmit location data indicative of thepresent location of the user AR system 104 within the presentation site.To do so, the user location reporter 706 may determine the location ofthe user AR system 104 based on the sensor data produced by the locationdetermination sensors 530. As discussed above, the location data may bean absolute location value, such as a GPS location, or a relativelocation value such as location data indicative of the location of theuser AR system 104 relative to known position or device within thepresentation site (e.g., relative to a communication node or WiFihotspot.)

The AR presentation presenter 708 is configured to receive an ARpresentation from the AR server 102 and present the AR presentation to auser of the user AR system 104. To do so, the AR presentation presenter708 includes a time-delayed AR sensory stimulus event manager 720, whichis configured to manage the presentation of the time-delayed sensorystimulus events included in or associated with an AR presentation. Thatis, the time-delayed AR sensory stimulus event manager 720 is configuredto present the time-delayed sensory stimulus events to a user of theuser AR system 104 in a time-delayed manner. For example, in embodimentswherein each time-delayed AR sensory stimulus event includes a timingparameter associated therewith, the time-delayed AR sensory stimulusevent manager 720 may present the associated time-delayed AR sensorystimulus event based on the timing parameter. That is, the timingparameter defines the time at which to present the associated AR sensorystimulus event relative the network clock 550 of the user AR system 104,which may or may not have been synchronized with the master networkclock 450. In other embodiments, as discussed above, the AR server 102may transmit the AR sensory stimulus events at the delayed time at whichit is to be presented by the user AR system 104. In such embodiments,the AR presentation presenter 708 is configured to present the ARsensory stimulus event upon receipt, which has been artificially delayedby the AR server 102 as discussed above.

The user reaction monitor 710 is configured to determine the user'sreaction to a time-delayed AR sensory stimulus event and transmit userreaction data indicative of such reaction to the AR server 102. To doso, the user reaction monitor 710 may monitor sensor data produced byany one or more of the input sensors 510, aggregate the sensor data, andtransmit the captured sensor data to the AR server 102. The userreaction monitor 710 may be configured to transmit the user reactiondata in response to presenting the time-delayed AR sensory stimulusevent or in response to a query received from the AR server 102. Asdiscussed above, the user reaction data may be embodied as any type ofdata indicative of a user's reaction to the time-delayed AR sensorystimulus event including, but not limited to, visual reaction data,audible reaction data, tactile reaction data, conductance reaction data,force reaction data, and/or movement reaction data.

Each user AR system 104 may maintain local AR content 750, which may beembodied as AR presentations and/or time-delayed AR sensory stimulusevents received from the AR server 102. For example, in embodiments inwhich the time-delayed AR sensory stimulus events include a timingparameter associated therewith, the AR server 102 may transmit the ARpresentation and/or time-delayed AR sensory stimulus events some timeprior to the time of presentation of the time-delayed AR sensorystimulus events. In such embodiments, the user AR system 104 may storethe time-delayed AR sensory stimulus events as local AR content 750until the time-delayed AR sensory stimulus events is to be presentedbased on, for example, the associated timing parameter.

Referring now to FIGS. 8 and 9, in use, the AR server 102 may execute amethod 800 for presenting a time-delayed augmented reality presentation.The method 800 begins with block 802 in which the AR server 102determines whether to present a time-delayed AR presentation to user ARsystems 104 located in the presentation site 108. If so, the method 800advances to block 804 in which the AR server 102 obtains an ARpresentation to be presented. As discussed above, the AR server 102 maystore AR presentations in the AR content database 650 and retrieve suchAR presentations as needed. In other embodiments, however, the AR server102 may obtain AR presentations from other sources, such as an ARpresentation server.

After the AR server 102 has obtained an AR presentation to be presented,the method 800 advances to block 806 in which the AR server 102identifies AR sensory stimulus events included in the AR presentationthat can be time delayed. To do so, in block 808, the AR server 102 mayanalyze the AR presentations to identify sensory stimulus events andfurther analyze each identified AR sensory stimulus events to determinewhether the AR sensory stimulus event can be time delayed. As discussedabove, the AR server 102 may utilize any suitable algorithm ormethodology to identify AR sensory stimulus events that can betime-delayed based on, for example, abrupt changes of sensory stimuluspresent in the AR presentation, visual or audible information includedin the AR presentation, and/or other criteria.

In some embodiments, as discussed above, each AR sensory stimulus eventof the AR presentation that can be time delayed may be tagged orannotated. In such embodiments, the AR server 102 may identify the ARsensory stimulus events that can be timed delayed by searching for suchtags or identifiers in block 810. For example, in some embodiments, theAR presentation may include embedded tags that delineate or identify ARsensory stimulus events that can be time delayed by the AR server 102.

In block 812, the AR server 102 identifies each user and/or user ARsystem 104 located in the presentation site 108. To do so, in block 814,the AR server 102 may query each user AR system 104 to determine whetherthe user AR system 104 is present and whether the user desires toparticipate in the AR presentation. For example, the AR server 102 maytransmit a broadcast query to all user AR systems 104 located in or nearthe presentation site 108. In other embodiments, the participating userAR systems 104 may be pre-known or otherwise already identified and, insuch embodiments, the AR server 102 may maintain a list of participatinguser AR systems 104.

After each participating user AR system 104 has been identified, the ARserver 102 synchronizes the local network clocks 550 of each user ARsystem 104 in block 816. To do so, the AR server 102 may synchronizeeach network clock 550 with the master network clock 450 of the ARserver 102 in block 818. For example, the AR server 102 may transmitclock information indicative of the master network clock 450 to eachuser AR system 104. Each user AR system 104 may subsequently synchronizeits local network clock 550 based on the received clock information. Inother embodiments, the AR server 102 may query each user AR system 104for clock information indicative of the local network clock 550 ofcorresponding user AR system 104. In such embodiments, the AR server 102may utilize the received clock information as a timing offset fordetermining a timing delay for the respective user AR system 104.Alternatively, the AR server 102 may determine the timing offset betweenthe received clock information and the master network clock 450 andtransmit such timing offset to the corresponding user AR system 104 toallow the user AR system 104 to synchronize its local network clock 550.

Subsequently, in block 820, the AR server 102 determines a presentlocation of each participating user AR system 104 within thepresentation site 108. To do so, in some embodiments, the AR server 102may query each user AR system 104 and receive location information fromthe queried user AR systems 104 in block 822. As discussed above, suchlocation data may be an absolute or relative location value (e.g.,relative to a communication node or WiFi hotspot). Additionally oralternatively, in some embodiments in block 824, the AR server 102 maydetermine or infer the relative location of each participating user ARsystem 104 based on sensor data received from one or more local sensors302.

After the AR server 102 has determined the location of each user ARsystem 104 within the presentation site 108, the method 800 advances toblock 826 of FIG. 9. In block 826, the AR server 102 determines a timedelay for each time-delayable AR sensory stimulus event identified inthe AR presentation. To do so, the AR server 102 may determine the timedelay (e.g., a value measured in temporal increments) based on thelocation of each user AR system in the presentation site 108 in block828. For example, user AR systems 104 farther away from the originationpoint of an AR sensory stimulus event may be assigned a higher timedelay value relative to those user AR systems 104 located nearer theorigination point. Alternatively, in some embodiments in block 830, theAR server 102 may determine the time delay based on geographical zonesassigned to the presentation site 108. In such embodiments, each user ARsystem 104 located in the same geographical zone is assigned the sametime delay.

In block 832, the AR servers 102 determines the time delay value as atemporal value relative to the synchronized master network clock 450.Alternatively, in embodiments in which each user AR system 104 transmitsclock information indicative of its local network clock 550, thedetermined time delay value may be relative to the local network clock550 of the particular user AR system 104. Regardless, after the ARserves 102 determines the time delay for the AR sensory stimulus eventand for each user AR system 104, the AR server may embed a timingparameter indicative of the associated time delay with the correspondingAR sensory stimulus event in block 834. As discussed below, the timingparameter may be used by the user AR system 104 to present theassociated AR sensory stimulus event in a time delayed manner. Forexample, the timing parameter may define a reference time point at whichto present the AR sensory stimulus event, which may be referenced to themaster network clock 450.

After the AR server 102 has determined the timing delay for eachidentified time-delayable AR sensory stimulus event, the AR servers maypresent the time delayed presentation to the users of the user ARsystems 104 located in the presentation site 108 in block 836. To do so,in block 838, the AR server 102 presents each time delayed AR sensorystimulus event to each user AR system 104 in a time-delayed manner basedon the location of the corresponding user AR system 104 (i.e., thelocation of the user within the presentation site 108). For example, inthe illustrative embodiment, the AR server 102 transmits thetime-delayed AR sensory stimulus event with the determined timingparameter in block 840. The time-delayed AR sensory stimulus events maybe transmitted with the AR presentation as a whole or transmitted asseparate AR sensory stimulus events. However, because each AR sensorystimulus event includes the associated timing parameter, the AR server102 may transmit the AR sensory stimulus event some amount of time priorto the presentation of the time-delayed AR presentation. Alternatively,in embodiments in which the timing parameters are not used, the ARserver 102 may transmit the time-delayed sensory stimulus event to eachuser AR system 104 in real time in block 842. That is, in suchembodiments, the AR server 102 transmits the AR sensory stimulus eventat the delayed time at which the particular user AR system 104 is topresent the AR sensory stimulus to the user.

After the AR server 102 has provided the time-delayed AR sensorystimulus event to each user AR system 104 in whichever manner and eachuser AR system 104 has presented the time-delayed AR sensory stimulusevent to the corresponding user, the AR server 102 determines reactionsof the users in block 844. To do so, the AR server 102 receives userreaction data from each participating user AR system 104 in block 846.The user AR systems 104 may transmit the user reaction data in responseto a query received from the AR server or autonomously afterpresentation of the time-delayed AR sensory stimulus event. Additionallyor alternatively, in some embodiments, the AR server 102 may interpretusers' reactions to AR sensory stimulus events based on sensor datareceived from the local sensors 302 in block 848. For example, the ARserver 102 may analyze video sensor data to determine user's facialreactions to an AR sensory stimulus event.

Subsequently, in block 850, the AR server 102 updates the ARpresentation based on the users' reaction received in block 844. Forexample, in block 852, the AR server 102 may adjust the timing or amountof temporal delay of one or more time-delayed AR sensory stimulus eventsof the AR presentation in block 852. After any update to the ARpresentation has been completed, the method 800 loops back to block 802in which the AR server 102 determines whether to present anothertime-delayed AR presentation.

Referring now to FIGS. 10 and 11, in use, each participating user ARsystem 104 may execute a method 1000 method for presenting atime-delayed augmented reality presentation. The method 1000 begins withblock 1002 in which the user AR system 104 determines whether toparticipate in the time-delayed AR presentation available from the ARserver 102. For example, in some embodiments, the user AR system 104 mayreceive a query from the AR server 102 requesting whether the user ofthe user AR system 104 desires to participate. The user may activelyrespond to the query or have the user AR system 104 set to automaticallyaccept or deny the query. Regardless, in such embodiments, the user ARsystem 104 responds to any such query in block 1004.

If the user AR system 104 is to participate in the time-delayed ARpresentation, the method advances to block 1006 in which the user ARsystem 104 synchronizes its local network clock 550 with the masternetwork clock 450 of the AR server 102. For example, as discussed above,the AR server 102 may transmit clock information indicative of themaster network clock 450 in some embodiments. In such embodiments, theuser AR system 104 may adjust its local network clock 550 based on theclock information received from the AR server 102. In other embodiments,the AR server 102 may request clock information from the user AR system104. In such embodiments, the user AR system 104 may transmit clockinformation indicative of the local network clock 550 of the user ARsystem 104 to the AR server 102.

In some embodiments, as discussed above, the AR server 102 may transmitqueries for location information to each user AR system 104. In suchembodiments, the user AR system 104 may respond to the location query inblock 1008. For example, in block 1010, the user AR system 104 maydetermine location information indicative of its present location withinthe AR presentation site 108 and transmit such location information tothe AR server 102 in block 1010. As discussed above, the locationinformation may be absolute (e.g., location information determined fromthe GPS circuit 532) or relative to a location or object within thepresentation site 108 (e.g., location information determined based ontriangulation or trilateration with one more WiFi hotspots or nodes).

In block 1012, the user AR system 104 receives AR presentation data fromthe AR server. For example, in block 1014, the user AR system 104 mayreceive the AR presentation, which may include one or more time-delayedsensory stimulus events. In such embodiments, each time-delayed sensorystimulus event may have a timing parameter associated or embeddedtherewith from which the user AR system 104 may determine a delay forwhich to present the AR sensory stimulus event. Alternatively, in otherembodiments as discussed above, the AR server 102 may transmit eachtime-delayed AR sensory stimulus event in a real time (i.e., at the timeat which the user AR system 104 is to present the AR sensory stimulusevent).

Regardless, after the user AR system 104 has received the ARpresentation data in block 1012, the method 1000 advances to block 1018of FIG. 11. In block 1018, the user AR system 104 presents thetime-delayed AR presentation the user. In doing so, in block 1020, theuser AR system 104 presents the one or more time-delayed sensor stimulusevents based on an associated time delay determined by the AR server102. For example, in block 1022, the user AR system 104 may present atime-delayed sensor stimulus event to the user based on a timingparameter associated with the corresponding time-delayed sensor stimulusevent. For example, the timing parameter may identify a time, based onthe master network clock 450 to which the local network clock 550 of theuser AR system 104 has been synchronized, at which the user AR system104 is to present the corresponding AR sensory stimulus event.Alternatively, the timing parameter may identify a length of delay timerelative to time of receipt for which the user AR system 104 should waitbefore presenting the AR sensory stimulus event. Alternatively, inembodiments in which a timing parameter is not used, the AR server 102may transmit the time-delayed AR sensory stimulus event in real time. Insuch embodiments, the user AR system 104 is configured to promptlypresent the received AR sensory stimulus event to the user in block1024.

After the user AR system 104 has presented the AR presentation and/ortime-delayed AR sensory stimulus event to the user in block 1018, themethod 1000 advances to block 1026 in some embodiments. In block 1026,the user AR system 104 reports the user's reaction to the time-delayedAR sensory stimulus event. To do so, in block 1028, the user AR system104 may receive sensor data from one or more of the input sensors 510.For example, in block 1030, the user AR system 104 may monitor the inputsensors 510 during the presentation of the time-delayed AR sensorystimulus event. After the user AR system 104 has collected the sensordata indicative of the user's reaction, the user AR system 104 transmitsthe user reaction data to the AR server 102 in block 1032. The method1000 subsequently loops back to block 1002 of FIG. 10 in which the userAR system 104 determines whether to participate in another ARpresentation.

EXAMPLES

Illustrative examples of the technologies disclosed herein are providedbelow. An embodiment of the technologies may include any one or more,and any combination of, the examples described below.

Example 1 includes an augmented reality (AR) server for presenting atime-delayed AR presentation, the AR server comprising a user locationmapper to determine a location of a plurality of user AR systems locatedwithin a presentation site; and an AR presentation manager to (i)identify an AR sensory stimulus event of an AR presentation to bepresented within the presentation site, (ii) determine a time delay ofthe AR sensory stimulus event for each user AR system based on thelocation of the corresponding user AR system within the presentationsite; and (ii) present the AR sensory stimulus event to each user ARsystem based on the determined time delay associated with thecorresponding user AR system.

Example 2 includes the subject matter of Example 1, and wherein toidentify the AR sensory stimulus event comprises to analyze the ARpresentation for AR sensory stimulus events to identify an AR sensorystimulus event of the AR presentation that can be time delayed.

Example 3 includes the subject matter of any of Examples 1 and 2, andwherein to identify the AR sensory stimulus event comprises to identifyan AR sensory stimulus event of the AR presentation that has been taggedas capable of being time delayed.

Example 4 includes the subject matter of any of Examples 1-3, andwherein to determine a location of the plurality of user AR systemscomprises to receive location information from each of the plurality ofuser AR systems indicative of the location of the corresponding user ARsystem within the presentation site.

Example 5 includes the subject matter of any of Examples 1-4, andwherein to determine a location of the plurality of user AR systemscomprises to receive location information from one or more local sensorslocated at the presentation site, wherein the location information isindicative of a location of each of the plurality of user AR systemswithin the presentation site; and determine a relative location of eachof the user AR systems within the presentation site based on thelocation information.

Example 6 includes the subject matter of any of Examples 1-5, andwherein to determine the location of the plurality of user AR systemscomprises to transmit a query to each user AR system to requestconfirmation to participate in the AR presentation, and determine alocation of a responding user AR system of the plurality of user ARsystems in response to a confirmation to participate in the ARpresentation received from the responding user AR system.

Example 7 includes the subject matter of any of Examples 1-6, andfurther including a master network clock, wherein to determine the timedelay of the AR sensory stimulus event comprises to synchronize anetwork clock of each user AR system to the master network clock.

Example 8 includes the subject matter of any of Examples 1-7, andwherein to synchronize the network clock of each user AR systemcomprises to transmit clock information related to the master networkclock of the AR server.

Example 9 includes the subject matter of any of Examples 1-8, andwherein to determine the time delay of the AR sensory stimulus event foreach user AR system comprises to determine a time delay of the ARsensory stimulus event for each user AR system relative to the networkclock of the corresponding user AR system.

Example 10 includes the subject matter of any of Examples 1-9, andwherein to determine the time delay of the AR sensory stimulus eventcomprises to determine a time delay of the AR sensory stimulus event foreach user AR system based on a geographical zone of the presentationsite in which the corresponding user AR system is located.

Example 11 includes the subject matter of any of Examples 1-10, andwherein to determine the time delay of the AR sensory stimulus eventcomprises to increase the time delay as a function of the distance ofthe corresponding user AR system relative to a reference point withinthe presentation site.

Example 12 includes the subject matter of any of Examples 1-11, andwherein to present the AR sensory stimulus event to each user AR systemcomprises to transmit the AR sensory stimulus event including time delaydata that identifies time delay determined for each corresponding userAR system.

Example 13 includes the subject matter of any of Examples 1-12, andwherein to present the AR sensory stimulus event to each user AR systemcomprises to determine a timing parameter that identifies the time delaydetermined for the corresponding user AR system based on the location ofthe corresponding user AR system; and transmit each timing parameter tothe corresponding user AR system.

Example 14 includes the subject matter of any of Examples 1-13, andwherein to present the AR sensory stimulus event to each user AR systemcomprises to transmit the AR sensory stimulus event at a point in timethat is based on the determined time delay for the corresponding user ARsystem.

Example 15 includes the subject matter of any of Examples 1-14, andwherein to present the AR sensory stimulus event to each user AR systemcomprises to cause each user AR system to generate the AR sensorystimulus event in a time-delayed manner relative to at least one otheruser AR system located within the presentation site that has previouslygenerated the AR sensory stimulus event

Example 16 includes the subject matter of any of Examples 1-15, andfurther including a user reaction manager to determine a reaction of auser of each user AR system in response to the presentation of the ARsensory stimulus event.

Example 17 includes the subject matter of any of Examples 1-16, andwherein to determine the reaction of a user of each user AR systemcomprises to receive user reaction data indicative of a reaction of theuser of the corresponding user AR system to the AR sensory stimulusevent.

Example 18 includes the subject matter of any of Examples 1-17, andwherein to determine the reaction of a user of each user AR systemcomprises to interpret a reaction of the user of each user AR system tothe AR sensory stimulus event based on sensor data received from asensor local to the presentation site.

Example 19 includes the subject matter of any of Examples 1-18, andwherein the user reaction manager is further to update the AR sensorystimulus event based on the determined reaction of the user of each userAR system.

Example 20 includes the subject matter of any of Examples 1-19, andwherein to update the AR sensory stimulus event comprises to adjust thetime delay of the AR sensory stimulus event for at least one user ARsystem based on the reaction of the user of the at least one user ARsystem.

Example 21 includes the subject matter of any of Examples 1-20, andwherein the AR sensory stimulus event comprises at least one of anaudible sensory stimulus event, a visual sensory stimulus event, atactile sensory stimulus event, or an olfactory sensory stimulus event.

Example 22 includes the subject matter of any of Examples 1-21, andwherein to determine the time delay of the AR sensory stimulus event foreach user AR system based on the location of the corresponding user ARsystem within the presentation site comprises to determine the timedelay based on a law of physics associated with the AR sensory stimulusevent.

Example 23 includes a method for presenting a time-delayed augmentedreality (AR) presentations, the method comprising identifying, by a ARserver, an AR sensory stimulus event of an AR presentation to bepresented within a presentation site; determining, by the AR server, alocation of a plurality of user AR systems located within thepresentation site; determining, by the AR server, a time delay of the ARsensory stimulus event for each user AR system based on the location ofthe corresponding user AR system within the presentation site; andpresenting, by the AR server, the AR sensory stimulus event to each userAR system based on the determined time delay associated with thecorresponding user AR system.

Example 24 includes the subject matter of Example 23, and whereinidentifying the AR sensory stimulus event comprises analyzing the ARpresentation for AR sensory stimulus events to identify an AR sensorystimulus event of the AR presentation that can be time delayed.

Example 25 includes the subject matter of any of Examples 23 and 24, andwherein identifying the AR sensory stimulus event comprises identifyingan AR sensory stimulus event of the AR presentation that has been taggedas capable of being time delayed.

Example 26 includes the subject matter of any of Examples 23-25, andwherein determining a location of the plurality of user AR systemscomprises receiving location information from each of the plurality ofuser AR systems indicative of the location of the corresponding user ARsystem within the presentation site.

Example 27 includes the subject matter of any of Examples 23-26, andwherein determining a location of the plurality of user AR systemscomprises receiving, by the AR server, location information from one ormore local sensors located at the presentation site, wherein thelocation information is indicative of a location of each of theplurality of user AR systems within the presentation site; anddetermining, by the AR server, a relative location of each of the userAR systems within the presentation site based on the locationinformation.

Example 28 includes the subject matter of any of Examples 23-27, andwherein determining the location of the plurality of user AR systemscomprises transmitting, by the AR server, a query to each user AR systemto request confirmation to participate in the AR presentation, anddetermining, by the AR server, a location of a responding user AR systemof the plurality of user AR systems in response to a confirmation toparticipate in the AR presentation received from the responding user ARsystem.

Example 29 includes the subject matter of any of Examples 23-28, andwherein determining the time delay of the AR sensory stimulus eventcomprises synchronizing, by the AR server, a network clock of each userAR system to a master network clock of the AR server.

Example 30 includes the subject matter of any of Examples 23-29, andwherein synchronizing the network clock of each user AR system comprisestransmitting, by the AR server, clock information related to the masternetwork clock of the AR server.

Example 31 includes the subject matter of any of Examples 23-30, andwherein determining the time delay of the AR sensory stimulus event foreach user AR system comprises determining a time delay of the AR sensorystimulus event for each user AR system relative to the network clock ofthe corresponding user AR system.

Example 32 includes the subject matter of any of Examples 23-31, andwherein determining the time delay of the AR sensory stimulus eventcomprises determining a time delay of the AR sensory stimulus event foreach user AR system based on a geographical zone of the presentationsite in which the corresponding user AR system is located.

Example 33 includes the subject matter of any of Examples 23-32, andwherein determining the time delay of the AR sensory stimulus eventcomprises increasing the time delay as a function of the distance of thecorresponding user AR system relative to a reference point within thepresentation site.

Example 34 includes the subject matter of any of Examples 23-33, andwherein presenting the AR sensory stimulus event to each user AR systemcomprises transmitting, to each user AR system, the AR sensory stimulusevent including time delay data that identifies the time delaydetermined for each corresponding user AR system.

Example 35 includes the subject matter of any of Examples 23-34, andwherein presenting the AR sensory stimulus event to each user AR systemcomprises determining, for each user AR system, a timing parameter thatidentifies the time delay determined for the corresponding user ARsystem based on the location of the corresponding user AR system; andtransmitting each timing parameter to the corresponding user AR system.

Example 36 includes the subject matter of any of Examples 23-35, andwherein presenting the AR sensory stimulus event to each user AR systemcomprises transmitting, to each user AR system, the AR sensory stimulusevent at a point in time that is based on the determined time delay forthe corresponding user AR system.

Example 37 includes the subject matter of any of Examples 23-36, andwherein presenting the AR sensory stimulus event to each user AR systemcomprises causing each user AR system to generate the AR sensorystimulus event in a time-delayed manner relative to at least one otheruser AR system located within the presentation site that has previouslygenerated the AR sensory stimulus event

Example 38 includes the subject matter of any of Examples 23-37, andfurther including determining, by the AR server, a reaction of a user ofeach user AR system in response to the presentation of the AR sensorystimulus event.

Example 39 includes the subject matter of any of Examples 23-38, andwherein determining the reaction of a user of each user AR systemcomprises receiving, from each user AR system, user reaction dataindicative of a reaction of the user of the corresponding user AR systemto the AR sensory stimulus event.

Example 40 includes the subject matter of any of Examples 23-39, andwherein determining the reaction of a user of each user AR systemcomprises interpreting a reaction of the user of each user AR system tothe AR sensory stimulus event based on sensor data received from asensor local to the presentation site.

Example 41 includes the subject matter of any of Examples 23-40, andfurther including updating the AR sensory stimulus event based on thedetermined reaction of the user of each user AR system.

Example 42 includes the subject matter of any of Examples 23-41, andwherein updating the AR sensory stimulus event comprises adjusting thetime delay of the AR sensory stimulus event for at least one user ARsystem based on the reaction of the user of the at least one user ARsystem.

Example 43 includes the subject matter of any of Examples 23-42, andwherein determining the time delay of the AR sensory stimulus event foreach user AR system based on the location of the corresponding user ARsystem within the presentation site comprises determining the time delaybased on a law of physics associated with the AR sensory stimulus event.

Example 44 includes the subject matter of any of Examples 23-43, andwherein the AR sensory stimulus event comprises at least one of anaudible sensory stimulus event, a visual sensory stimulus event, atactile sensory stimulus event, or an olfactory sensory stimulus event.

Example 45 include one or more machine-readable storage media comprisinga plurality of instructions stored thereon that, when executed, causesan AR server to perform the method of any of Examples 23-44.

Example 46 includes an augmented reality (AR) server for presenting atime-delayed AR presentation, the AR server comprising means foridentifying an AR sensory stimulus event of an AR presentation to bepresented within a presentation site; means for determining a locationof a plurality of user AR systems located within the presentation site;means for determining a time delay of the AR sensory stimulus event foreach user AR system based on the location of the corresponding user ARsystem within the presentation site; and means for presenting the ARsensory stimulus event to each user AR system based on the determinedtime delay associated with the corresponding user AR system.

Example 47 includes the subject matter of Example 46, and wherein themeans for identifying the AR sensory stimulus event comprises means foranalyzing the AR presentation for AR sensory stimulus events to identifyan AR sensory stimulus event of the AR presentation that can be timedelayed.

Example 48 includes the subject matter of any of Examples 46 and 47, andwherein the means for identifying the AR sensory stimulus eventcomprises means for identifying an AR sensory stimulus event of the ARpresentation that has been tagged as capable of being time delayed.

Example 49 includes the subject matter of any of Examples 46-48, andwherein the means for determining a location of the plurality of user ARsystems comprises means for receiving location information from each ofthe plurality of user AR systems indicative of the location of thecorresponding user AR system within the presentation site.

Example 50 includes the subject matter of any of Examples 46-49, andwherein the means for determining a location of the plurality of user ARsystems comprises means for receiving location information from one ormore local sensors located at the presentation site, wherein thelocation information is indicative of a location of each of theplurality of user AR systems within the presentation site; and means fordetermining a relative location of each of the user AR systems withinthe presentation site based on the location information.

Example 51 includes the subject matter of any of Examples 46-50, andwherein the means for determining the location of the plurality of userAR systems comprises means for transmitting a query to each user ARsystem to request confirmation to participate in the AR presentation,and means for determining a location of a responding user AR system ofthe plurality of user AR systems in response to a confirmation toparticipate in the AR presentation received from the responding user ARsystem.

Example 52 includes the subject matter of any of Examples 46-51, andwherein the means for determining the time delay of the AR sensorystimulus event comprises means for synchronizing a network clock of eachuser AR system to a master network clock of the AR server.

Example 53 includes the subject matter of any of Examples 46-52, andwherein the means for synchronizing the network clock of each user ARsystem comprises means for transmitting clock information related to themaster network clock of the AR server.

Example 54 includes the subject matter of any of Examples 46-53, andwherein the means for determining the time delay of the AR sensorystimulus event for each user AR system comprises means for determining atime delay of the AR sensory stimulus event for each user AR systemrelative to the network clock of the corresponding user AR system.

Example 55 includes the subject matter of any of Examples 46-54, andwherein the means for determining the time delay of the AR sensorystimulus event comprises means for determining a time delay of the ARsensory stimulus event for each user AR system based on a geographicalzone of the presentation site in which the corresponding user AR systemis located.

Example 56 includes the subject matter of any of Examples 46-55, andwherein the means for determining the time delay of the AR sensorystimulus event comprises means for increasing the time delay as afunction of the distance of the corresponding user AR system relative toa reference point within the presentation site.

Example 57 includes the subject matter of any of Examples 46-56, andwherein the means for presenting the AR sensory stimulus event to eachuser AR system comprises means for transmitting, to each user AR system,the AR sensory stimulus event including time delay data that identifiesthe time delay determined for each corresponding user AR system.

Example 58 includes the subject matter of any of Examples 46-57, andwherein the means for presenting the AR sensory stimulus event to eachuser AR system comprises means for determining, for each user AR system,a timing parameter that identifies the time delay determined for thecorresponding user AR system based on the location of the correspondinguser AR system; and means for transmitting each timing parameter to thecorresponding user AR system.

Example 59 includes the subject matter of any of Examples 46-58, andwherein the means for presenting the AR sensory stimulus event to eachuser AR system comprises transmitting, to each user AR system, the ARsensory stimulus event at a point in time that is based on thedetermined time delay for the corresponding user AR system.

Example 60 includes the subject matter of any of Examples 46-59, andwherein the means for presenting the AR sensory stimulus event to eachuser AR system comprises means for causing each user AR system togenerate the AR sensory stimulus event in a time-delayed manner relativeto at least one other user AR system located within the presentationsite that has previously generated the AR sensory stimulus event

Example 61 includes the subject matter of any of Examples 46-60, andfurther including means for determining, by the AR server, a reaction ofa user of each user AR system in response to the presentation of the ARsensory stimulus event.

Example 62 includes the subject matter of any of Examples 46-61, andwherein the means for determining the reaction of a user of each user ARsystem comprises means for receiving, from each user AR system, userreaction data indicative of a reaction of the user of the correspondinguser AR system to the AR sensory stimulus event.

Example 63 includes the subject matter of any of Examples 46-62, andwherein the means for determining the reaction of a user of each user ARsystem comprises means for interpreting a reaction of the user of eachuser AR system to the AR sensory stimulus event based on sensor datareceived from a sensor local to the presentation site.

Example 64 includes the subject matter of any of Examples 46-63, andfurther comprising means for updating the AR sensory stimulus eventbased on the determined reaction of the user of each user AR system.

Example 65 includes the subject matter of any of Examples 46-64, andwherein the means for updating the AR sensory stimulus event comprisesmeans for adjusting the time delay of the AR sensory stimulus event forat least one user AR system based on the reaction of the user of the atleast one user AR system.

Example 66 includes the subject matter of any of Examples 46-65, andwherein the means for determining the time delay of the AR sensorystimulus event for each user AR system based on the location of thecorresponding user AR system within the presentation site comprisesmeans for determining the time delay based on a law of physicsassociated with the AR sensory stimulus event.

Example 67 includes the subject matter of any of Examples 46-66, andwherein the AR sensory stimulus event comprises at least one of anaudible sensory stimulus event, a visual sensory stimulus event, atactile sensory stimulus event, or an olfactory sensory stimulus event.

Example 68 includes a user augmented reality (AR) system comprising oneor more output device to generate AR sensory stimuli to a user of theuser AR system; a communication subsystem to receive an AR sensorystimulus event from an AR server, wherein the AR sensory stimulus eventincludes a timing parameter that defines a time at which the AR sensorystimulus event is to be generated by the user AR system; and an ARpresentation presenter to control the one or more output devices togenerate the AR sensory stimulus event based on the timing parameter ofthe AR sensory stimulus event.

Example 69 includes the subject matter of Example 68, and furtherincluding a network clock; and a network clock manager to synchronizethe network clock with a master network clock of the AR server, whereinto generate the AR sensory stimulus event comprises to generate the ARsensory stimulus event based on the timing parameter of the AR sensorystimulus event and the network clock of the user AR system.

Example 70 includes the subject matter of any of Examples 68 and 69, andwherein the AR sensory stimulus event comprises at least one of anaudible sensory stimulus event, a visual sensory stimulus event, atactile sensory stimulus event, or an olfactory sensory stimulus event.

Example 71 includes the subject matter of any of Examples 68-70, andfurther including one or more input sensors to produce sensor dataindicative of a reaction of the user to the AR sensory stimulus event,wherein the communication subsystem is further to transmit the sensordata to the AR server.

Example 72 includes the subject matter of any of Examples 68-71, andwherein the one or more input sensors comprise a visual sensor, anaudible sensor, a tactile sensor, a proximity sensor, a conductancesensor, or a force sensor.

Example 73 includes a method for presenting an augmented reality (AR)sensory stimulus event to a user of an user AR system, the methodcomprising receiving, with the user AR system, an AR sensory stimulusevent from an AR server, wherein the AR sensory stimulus event includesa timing parameter that defines a time at which the AR sensory stimulusevent is to be generated by the user AR system; and generating, by oneor more output devices of the user AR system, the AR sensory stimulusevent based on the timing parameter of the AR sensory stimulus event.

Example 74 includes the subject matter of Example 73, and furtherincluding synchronizing, by the user AR system, a network clock of theuser AR system with a master network clock of the AR server, whereingenerating the AR sensory stimulus event comprises generating, by theone or more output devices, the AR sensory stimulus event based on thetiming parameter of the AR sensory stimulus event and the network clockof the user AR system.

Example 75 includes the subject matter of any of Examples 73 and 74, andwherein generating the AR sensory stimulus event comprises generating atleast one of an audible sensory stimulus event, a visual sensorystimulus event, a tactile sensory stimulus event, or an olfactorysensory stimulus event.

Example 76 includes the subject matter of any of Examples 73-75, andfurther including producing, by an input sensor of the user AR system,sensor data indicative of a reaction of the user to the AR sensorystimulus event; and transmitting, by the input sensor of the user ARsystem, the sensor data to the AR server.

Example 77 includes the subject matter of any of Examples 73-76, andwherein producing the sensor data comprises producing at least one ofvisual sensor data, audible sensor data, tactile sensor data, proximitysensor data, conductance sensor data, or force sensor data.

Example 78 includes one or more machine-readable storage mediacomprising a plurality of instructions stored thereon that, whenexecuted, causes a system controller of a protected system to performthe method of any of Examples 74-76.

Example 79 includes a user augmented reality (AR) system comprisingmeans for receiving an AR sensory stimulus event from an AR server,wherein the AR sensory stimulus event includes a timing parameter thatdefines a time at which the AR sensory stimulus event is to be generatedby the user AR system; and means for generating the AR sensory stimulusevent based on the timing parameter of the AR sensory stimulus event.

Example 80 includes the subject matter of Example 79, and furtherincluding means for synchronizing, by the user AR system, a networkclock of the user AR system with a master network clock of the ARserver, wherein the means for generating the AR sensory stimulus eventcomprises means for generating the AR sensory stimulus event based onthe timing parameter of the AR sensory stimulus event and the networkclock of the user AR system.

Example 81 includes the subject matter of any of Examples 79-80, andwherein the means for generating the AR sensory stimulus event comprisesmeans for generating at least one of an audible sensory stimulus event,a visual sensory stimulus event, a tactile sensory stimulus event, or anolfactory sensory stimulus event.

Example 82 includes the subject matter of any of Examples 79-81, andfurther including means for producing sensor data indicative of areaction of the user to the AR sensory stimulus event; and means fortransmitting the sensor data to the AR server.

Example 83 includes the subject matter of any of Examples 79-82, andwherein means for producing the sensor data comprises means forproducing at least one of visual sensor data, audible sensor data,tactile sensor data, proximity sensor data, conductance sensor data, orforce sensor data.

The invention claimed is:
 1. An augmented reality (AR) server forpresenting a time-delayed AR presentation, the AR server comprising: auser location mapper to determine a location of a plurality of user ARsystems located within a presentation site, wherein each user AR systemincludes a plurality of AR devices including a first AR device, a secondAR device, and a third AR device; and an AR presentation manager to (i)identify an AR sensory stimulus event of an AR presentation to bepresented within the presentation site, wherein the AR sensory stimulusevent includes a first AR sensory stimulus event and a second AR sensorystimulus event, (ii) determine a time delay of the first AR sensorystimulus event for the first AR device and for the second AR device ofeach user AR system based on the location of the corresponding AR devicewithin the presentation site, wherein the time delay is a function of adistance of the corresponding AR device relative to a reference pointwithin the presentation site at which the second AR sensory stimulusevent is to be presented such that the time delay increases as thedistance increases and wherein the time delay associated with the firstAR device is different from the time delay associated with the second ARdevice of at least one user AR system of the plurality of user ARsystems, and (iii) present the AR sensory stimulus event to each user ARsystem, wherein to present the AR sensory stimulus event comprises topresent the first AR sensory stimulus event to the first AR device andto the second AR device of each user AR system based on the determinedtime delay associated with the corresponding AR device and present thesecond AR sensory stimulus event to the third AR device of each user ARsystem without the determined time delay and at the reference pointwithin the presentation site for each user AR system.
 2. The AR serverof claim 1, further comprising a master network clock, wherein todetermine the time delay of the first AR sensory stimulus eventcomprises to synchronize a network clock of each user AR system to themaster network clock.
 3. The AR server of claim 1, wherein to determinethe time delay of the first AR sensory stimulus event comprises todetermine a time delay of the first AR sensory stimulus event for eachuser AR system based on a geographical zone of the presentation site inwhich the corresponding user AR system is located.
 4. The AR server ofclaim 1, wherein to present the AR sensory stimulus event to each userAR system comprises to transmit the AR sensory stimulus event includingtime delay data that identifies time delay determined for eachcorresponding user AR system.
 5. The AR server of claim 1, wherein topresent the AR sensory stimulus event to each user AR system comprisesto: determine a timing parameter that identifies the time delaydetermined for the corresponding user AR system based on the location ofthe corresponding user AR system; and transmit each timing parameter tothe corresponding user AR system.
 6. The AR server of claim 1, whereinto present the AR sensory stimulus event to each user AR systemcomprises to transmit the first AR sensory stimulus event at a point intime that is based on the determined time delay for the correspondinguser AR system.
 7. The AR server of claim 1, wherein to present the ARsensory stimulus event to each user AR system comprises to cause eachuser AR system to generate the first AR sensory stimulus event in atime-delayed manner relative to at least one other user AR systemlocated within the presentation site that has previously generated thefirst AR sensory stimulus event.
 8. The AR server of claim 1, furthercomprising a user reaction manager to determine a reaction of a user ofeach user AR system in response to the presentation of the AR sensorystimulus event and update the AR sensory stimulus event based on thedetermined reaction of the user of each user AR system, wherein toupdate the AR sensory stimulus event comprises to adjust the time delayof the first AR sensory stimulus event for at least one user AR systembased on the reaction of the user of the at least one user AR system. 9.A method for presenting a time-delayed augmented reality (AR)presentation, the method comprising: identifying, by an AR server, an ARsensory stimulus event of an AR presentation to be presented within apresentation site, wherein the AR sensory stimulus event includes afirst AR sensory stimulus event and a second AR sensory stimulus event;determining, by the AR server, a location of a plurality of user ARsystems located within the presentation site, wherein each user ARsystem includes a plurality of AR devices including a first AR device, asecond AR device, and a third AR device; determining, by the AR server,a time delay of the first AR sensory stimulus event for the first ARdevice and for the second AR device of each user AR system based on thelocation of the corresponding AR device within the presentation site,wherein the time delay is a function of a distance of the correspondingAR device relative to a reference point within the presentation site atwhich the second AR sensory stimulus event is to be presented such thatthe time delay increases as the distance increases and wherein the timedelay associated with the first AR device is different from the timedelay associated with the second AR device of at least one user ARsystem of the plurality of user AR systems; and presenting, by the ARserver, the AR sensory stimulus event to each user AR system, whereinpresenting the AR sensory stimulus event comprises presenting the firstAR sensory stimulus event to the first AR device and to the second ARdevice of each user AR system based on the determined time delayassociated with the corresponding AR device and presenting the second ARsensory stimulus event to the third AR device of each user AR systemwithout the determined time delay and at the reference point within thepresentation site for each user AR system.
 10. The method of claim 9,wherein determining the time delay of the first AR sensory stimulusevent comprises synchronizing, by the AR server, a network clock of eachuser AR system to a master network clock of the AR server.
 11. Themethod of claim 9, wherein determining the time delay of the first ARsensory stimulus event comprises determining a time delay of the firstAR sensory stimulus event for each user AR system based on ageographical zone of the presentation site in which the correspondinguser AR system is located.
 12. The method of claim 9, wherein presentingthe AR sensory stimulus event to each user AR system comprisestransmitting, to each user AR system, the AR sensory stimulus eventincluding time delay data that identifies the time delay determined foreach corresponding user AR system.
 13. The method of claim 9, whereinpresenting the AR sensory stimulus event to each user AR systemcomprises: determining, for each user AR system, a timing parameter thatidentifies the time delay determined for the corresponding user ARsystem based on the location of the corresponding user AR system; andtransmitting each timing parameter to the corresponding user AR system.14. The method of claim 9, wherein presenting the AR sensory stimulusevent to each user AR system comprises transmitting, to each user ARsystem, the first AR sensory stimulus event at a point in time that isbased on the determined time delay for the corresponding user AR system.15. The method of claim 9, further comprising: determining, by the ARserver, a reaction of a user of each user AR system in response to thepresentation of the AR sensory stimulus event; and updating the ARsensory stimulus event based on the determined reaction of the user ofeach user AR system, wherein updating the AR sensory stimulus eventcomprises adjusting the time delay of the first AR sensory stimulusevent for at least one user AR system based on the reaction of the userof the at least one user AR system.
 16. One or more non-transitory,machine-readable storage media comprising a plurality of instructionsstored thereon that, when executed, causes an AR server to: identify anAR sensory stimulus event of an AR presentation to be presented within apresentation site, wherein the AR sensory stimulus event includes afirst AR sensory stimulus event and a second AR sensory stimulus event;determine a location of a plurality of user AR systems located withinthe presentation site, wherein each user AR system includes a pluralityof AR devices including a first AR device, a second AR device, and athird AR device; determine a time delay of the first AR sensory stimulusevent for the first AR device and for the second AR device of each userAR system based on the location of the corresponding AR device withinthe presentation site, wherein the time delay is a function of adistance of the corresponding AR device relative to a reference pointwithin the presentation site at which the second AR sensory stimulusevent is to be presented such that the time delay increases as thedistance increases and wherein the time delay associated with the firstAR device is different from the time delay associated with the second ARdevice of at least one user AR system of the plurality of user ARsystems; and present the AR sensory stimulus event to each user ARsystem, wherein to present the AR sensory stimulus event comprises topresent the first AR sensory stimulus event to the first AR device andto the second AR device of each user AR system based on the determinedtime delay associated with the corresponding AR device and present thesecond AR sensory stimulus event to the third AR device of each user ARsystem without the determined time delay and at the reference pointwithin the presentation site for each user AR system.
 17. The one ormore non-transitory, machine-readable storage media of claim 16, whereinto determine the time delay of the first AR sensory stimulus eventcomprises to synchronize a network clock of each user AR system to amaster network clock of the AR server.
 18. The one or morenon-transitory, machine-readable storage media of claim 16, wherein todetermine the time delay of the first AR sensory stimulus eventcomprises to determine a time delay of the first AR sensory stimulusevent for each user AR system based on a geographical zone of thepresentation site in which the corresponding user AR system is located.19. The one or more non-transitory, machine-readable storage media ofclaim 16, wherein to present the AR sensory stimulus event to each userAR system comprises to transmit, to each user AR system, the AR sensorystimulus event including time delay data that identifies the time delaydetermined for each corresponding user AR system.
 20. The one or morenon-transitory, machine-readable storage media of claim 16, wherein topresent the AR sensory stimulus event to each user AR system comprisesto: determine, for each user AR system, a timing parameter thatidentifies the time delay determined for the corresponding user ARsystem based on the location of the corresponding user AR system; andtransmit each timing parameter to the corresponding user AR system. 21.The one or more non-transitory, machine-readable storage media of claim16, wherein to present the AR sensory stimulus event to each user ARsystem comprises to transmit, to each user AR system, the first ARsensory stimulus event at a point in time that is based on thedetermined time delay for the corresponding user AR system.
 22. The oneor more non-transitory, machine-readable storage media of claim 16,wherein the plurality of instructions, when executed, further causes theAR server to: determine a reaction of a user of each user AR system inresponse to the presentation of the AR sensory stimulus event; andupdate the AR sensory stimulus event based on the determined reaction ofthe user of each user AR system, wherein to update the AR sensorystimulus event comprises to adjust the time delay of the first ARsensory stimulus event for at least one user AR system based on thereaction of the user of the at least one user AR system.